package com.xy.biz.xd.boot;

import com.xy.lang.domain.OrderConstant;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@SpringBootApplication(exclude = {
        org.activiti.spring.boot.SecurityAutoConfiguration.class,
        SecurityAutoConfiguration.class
        },
        scanBasePackages = {
        "com.xy.tool",
        "com.xy.biz.base",
        "com.xy.biz.uc",
        "com.xy.biz.auth",
        "com.xy.biz.mc",
        "com.xy.biz.fd",
        "com.xy.biz.xd"
})
@MapperScan(basePackages = {
        "com.xy.tool.concurrent.locks.rdb.dao",
        "com.xy.tool.gid.dao",
        "com.xy.biz.base.dao",
        "com.xy.biz.uc.dao",
        "com.xy.biz.auth.dao",
        "com.xy.biz.mc.dao",
        "com.xy.biz.fd.dao",
        "com.xy.biz.xd.dao"
})
@EnableTransactionManagement(order = OrderConstant.TRANSACTION)
@EnableSwagger2
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}
